It is desirable to provide ubiquitous, integrated high speed and high capacity digital communication services (such as video, data and voice) to homes, schools, governments, and businesses. One such network, the telephone network, could be upgraded to provide such services. However, the century-old copper telephone network, primarily designed for telephony, has a usable bandwidth of only about 1 MHz. Therefore, it is quite difficult and expensive to provide multi-channel digital video, along with data and voice on the telephone network. On the other hand, the coaxial drop line of a cable network to each home has a high usable bandwidth of about 1 GHz, providing ample speed and capacity to the integrated broadband services listed above, in addition to delivering traditional broadcast analog video programs. These traditional coaxial cable networks can be readily upgraded to bidirectional hybrid fiber-coaxial cable networks (HFC networks) to enable bidirectional high speed and high capacity communications. The HFC network is inherently a shared medium technology. Nevertheless, providing efficient, high speed, high capacity shared access to the upstream transmission has been a challenge to the communication industries.
FIG. 1 shows a conventional bidirectional hybrid fiber coaxial (HFC) cable network 10 having a head end 12. The head end 12 has a head end controller 28 that can communicate with one or more other networks 30, such as the internet and local area networks. Downstream directed signals are transmitted from, and upstream directed signals are received at, the head end controller 28 via a coaxial link 34 connected to a diplexer 32. The diplexer 32 splits the downstream directed signals from the other signal carried on the link 34 and outputs them to a laser transmitter 36. The laser transmitter 36 modulates the downstream directed signals onto an optical signal that is transmitted via a downstream optical fiber trunk 14. Likewise, upstream directed signals modulated on a signal carried via an upstream optical fiber trunk 14' may be demodulated at an optical receiver 38. The diplexer 32 combines such upstream directed signals with the other signals carried on the link 34 for receipt at the head end controller 28.
The upstream and downstream optical trunks 14, 14' connect the head end 12 to an optical node 16. The head end 12 and optical node 16 may be separated by up to about 80 kilometers. Like the head end 12, the optical node 16 has a laser transmitter 40, an optical receiver 42 and a diplexer 44. The laser transmitter 40 is for modulating upstream directed signals received via the diplexer 44 onto an optical signal for transmission on the upstream directed optical trunk 14'. The optical receiver 42 is for demodulating downstream directed signals from the optical signal carried on downstream optical trunk 14 and transferring the demodulated downstream directed signal to the diplexer 44.
The diplexer 44 outputs onto coaxial trunk 18 the downstream directed signals that are demodulated by the optical receiver. Likewise, the diplexer 44 receives from the coaxial trunk 18 upstream directed signals for modulation by the laser transmitter 40. The individual links of the coaxial trunk 18 are interconnected by bidirectional amplifiers 20 and taps 22. Taps 22 are also provided for connecting coaxial drop lines 22 to the coaxial trunk 18. The coaxial drop lines 22 connect the subscriber locations 26 to the coaxial trunk 18 for upstream and downstream directed communication.
The optical trunks 14, 14', coaxial trunks 18, taps 20 and coaxial drop lines 22 define a shared communications medium over which communicated signals are transmitted or received by all connected network devices, such as subscriber stations at the subscriber locations 26 and the head end 12. The cable network 10 is specifically designed to deliver information in the downstream direction from the head end 12 to the subscriber locations 26. For downstream directed communication, frequency division multiplexed communication channels are defined which have mutually unique carrier frequencies and non-overlapping bands (6 MHz bands in North America and other NTSC cable TV systems, 8 MHz bands in Europe and other PAL and SECAM cable TV systems) in the band from 54 MHZ up to the upper cut-off frequency of the coaxial trunks 18 and drop lines 22 (typically, 500-750 MHZ). This is also known as sub-split cable network. Each 6 MHz downstream channel can carry either traditional analog NTSC composite video signals or digitally encoded data appropriately modulated by a RF carrier. Each traditional broadcast video programs are each transmitted in a separate communication channel by modulating an NTSC signal onto a predetermined carrier signal having an assigned carrier frequency and transmitting the signal from the head end controller 28.
Although the cable network 10 has a large amount of bandwidth, the cable network 10 presents certain challenges for providing high speed and high capacity upstream transmission from a large number (typically a few hundred) of subscriber locations 26. Most notably, the subscriber locations 26 may be distributed over a large geographic area. The signal path (i.e., sum of the lengths of the coaxial drop lines 22, coaxial trunk links 18 and optical trunk links 14) between individual subscriber locations 26 or subscriber locations 26 and the cable head end 12 can be on the order of tens of kilometers. Such long signal paths introduce noticeable delays in the transmission of signals which tend to be about 5 .mu.s/kilometer.
Recognizing such challenges, the IEEE 802.14 standards body has proposed a communication scheme as follows. Two channels are defined for communication, namely, an upstream directed channel (UC) and a downstream directed channel (DC). Subscriber stations (SSs) 50 (FIG. 2), such as cable modems, set top boxes or data terminals, at subscriber locations 26 can transmit on the upstream directed channel UC but can only receive on the downstream directed channel DC. The head end 12 can only receive on the upstream directed channel UC and only transmit on the downstream directed channel DC. In other words, the upstream channel UC is a multi-point to point channel whereas the downstream channel DC is a point to multi-point channel. These channels UC and DC are said to be multiple access channels, meaning that multiple network devices (SSs 50, head end 12, etc.) are permitted to access each channel UC or DC. As such, although the physical topology of the cable network 10 is a tree and branch configuration, the communication channels UC and DC may be illustrated as a logical bus network as shown in FIG. 2.
Each channel UC and DC is assigned a different frequency band and center frequency, such as is shown in FIG. 3. As shown, the upstream channel UC may be assigned a band in the 5-42 MHz band not already used for control message communication. The downstream channel DC may be assigned one of the unused 6 MHZ bands, i.e., not currently used for communicating traditional broadcast video programming. The DC channel is divided into time slots and the UC channel is divided time slots ("slots") and mini-time slots ("mini-slots"). Point-to-point or multicast communication is achieved by reading packets from, or writing packets into, the slots and mini-slots in a time division multiplexing or time division multiple access fashion. (Herein, a "packet" is an organization of a bitstream into discrete units. A packet may include control or overhead information, typically located in a header section of the packet, and user message or user data information in a "payload" section of the packet. The term "payload" is used herein more generally to refer to a channel for carrying communicated data or messages.) In order to read a packet from a channel, the particular channel is tuned (the frequency band of that channel is filtered out of the signals carried on the shared medium), and a packet is demodulated from a respective slot or mini-slot time period of the carrier signal. Likewise, in writing a packet to a channel, a packet is modulated onto a carrier signal of that channel and the modulated carrier signal is transmitted at the appropriate slot or mini-slot time period of the carrier signal and combined with the other signals carried on the shared medium.
It should be noted that the cabling distance (i.e., signal path) between any two SSs 50 and the head end 12 or the mutual cabling distance between any two SSs 50 can widely vary in the cable network 10. As such, a wide disparity of propagation delays may be incurred by each signal transmitted to or from an SS 50 depending on its relative distance to the head end 12. Assuming that the SSs 50 are synchronized to a system clock at the head end 12 using a time-stamping technique (to be detailed later), a packet transmitted at "the same time" from different SSs 50 will arrive at the head end 12 at different times. The difference can be on the order to tens of .mu.sec. If not properly compensated, a large guard time must be inserted between each packet transmission, resulting in a very inefficient time division multiplexing (TDM) transmission in the upstream channels. To overcome this problem, the following procedure has been proposed in the IEEE 802.14 standard. Each SS 50 is polled and transmits a signal to the head end 12. The head end 12 records the propagation delay of each SS 50. The head end 12 then informs each SS 50 of how long a propagation delay is incurred by signals transmitted from that specific SS 50 to the head end 12. Each SS 50 is also informed of the maximum propagation delay of all SSs 50 in the cable network 10. Whenever a SS 50 decides to transmit a signal, the SS 50 determines the slot or mini-slot boundary at which it desires to write its packet. The SS 50 then delays its transmission from the slot or mini-slot boundary for a certain time period equal to the difference between the propagation delay of the transmitting SS 50 and the maximum propagation delay in the cable network 10. The net effect is that all signals received at the head end 12 "appear" to incur the same propagation delay as the SS 50 that incurs the maximum propagation delay.
Each SS 50 is assigned a unique identifier or address. Each packet written into each slot contains at least the address of the destination, i.e., the SS 50, which is the ultimate intended recipient of the packet. A SS 50 transmits information to another SS 50 or to the head end 12 by dividing the information into packets and writing the packets into allocated slots of the upstream channel UC. Such packets are transmitted by the upstream channel UC to the head end 12 which reads each packet from each time slot. The head end 12 examines the destination address in the header of the packet. The head end 12 writes the packet into an available slot of the downstream channel DC. The packets are broadcasted in the downstream channel DC and are read from the slots by each SS 50. Each SS 50 compares the destination address of the received packets to its assigned address or to the group (multicast) addresses assigned to the multicast groups to which the SS 50 has subscribed. If the addresses match, the packet is accepted. Otherwise, the packet is discarded.
As will be described in greater detail below, two types of packets are transmitted in the channels UC and DC, namely, "payload" packets and "control" packets. Payload packets carry user messages or user data to be communicated to a destination. Control packets carry control messages for allocating portions of the communication channels or other overhead control information. For reasons described below, SSs 50 write control packets into mini-slots of the upstream channel UC and write payload packets into slots of the upstream channel UC. The head end 12 writes payload and control packets into slots of the downstream channel DC. For example, each slot of the downstream channel DC accepts a frame which includes one payload packet and one control packet. This is possible because only the head end 12 writes control and payload packets into slots of the downstream channel DC.
Some manner must be provided to prevent each SS 50 from attempting to write packets into the same time slot of the upstream channel UC. To that end, a slot assignment-reservation protocol is implemented according to which each SS 50 may only write packets into slots that have been assigned to that SS 50. Each SS 50 can attempt to reserve slots (i.e., request an assignment of one or more slots) by writing a reservation request control packet into a mini-slot of the upstream channel UC allocated for receiving new reservation request packets. The reservation request control packet may indicate the address or identifier of the SS, the number or size of slots needed for the to-be-communicated payload packets, (conventionally, the slot length may be an integral number of mini-slot lengths and thus the number of slots needed may be expressed as the number of "mini-slot" lengths needed), the type of the communication for which slots are requested and an error check sequence (e.g., a cyclical redundancy check or CRC). The head end 12 receives the reservation request control packets from the mini-slots and responds by assigning one or more slots to each requesting SS 50. The head end 12 then writes control packets into slots of the downstream channel DC indicating which slots were assigned to each SS 50. Each SS 50 receives control packets that respond to its respective reservation request and then transmits its payload packets only in its assigned slots. Because SS's 50 only transmit payload packets in their assigned slots, no other SS 50 contends to simultaneously access the same slot. Contention is therefore localized to relatively small size reservation mini slots, and not the relatively lengthy payload packets. Consider that each slot or mini-slot accessed by more than one SS 50 simultaneously (thereby resulting in a collision) is wasted. As such, the use of mini-slots enables the SSs 50 to obtain access to the larger slots in a fashion that conserves the bandwidth.
The payload packets are received at the head end 12. The head end 12 identifies each received payload packet destined to a SS 50 in the cable network 10, and writes each of the identified packets into an available slot of the downstream channel DC. Each SS 50 receives from the downstream channel the payload packets destined thereto.
Nevertheless, contention exists in accessing the mini-slots. Such contention is resolved using a feedback mechanism and a collision resolution algorithm (CRA). The head end 12 monitors each mini-slot and determines if a collision has occurred. If the head end 12 detects a collision, the head end 12 transmits a message via the downstream channel DC indicating in which slots a collision was detected. Each SS 50 that has attempted to transmit a reservation request packet monitors the messages transmitted in the downstream channel DC. If an SS 50 receives a message from the head end 12 indicating that a collision has occurred in the same mini-slot in which the SS 50 had previously attempted to write its reservation request packet, the SS 50 determines that its reservation request packet had collided with another transmission by another device and therefore was not received by the head end 12. In such a case, the SS 50 executes a CRA to determine whether and when to attempt to retransmit its reservation request packet. Several CRA's are known such as "ternary tree," and "P-persistent and DQRAP." See P. Jacquet, P. Muhlethaler & P. Robert, Asymptotic Average Access Delay Analysis: Adaptive P-Persistence Versus Tree Algorithm, IEEE P802.14, Doc. no. IEEE 802.14-96/248 (1996), and U.S. Pat. No. 5,390,181.
It is desirable to reduce contention to increase the utilization of the bandwidth in the upstream and downstream channels UC and DC and, at the same time, accommodate as large a number of SSs 50 as possible. Generally, this is achieved by increasing the ratio of mini-slots to payload slots in the upstream channel UC and decreasing the size of the mini-slots in the upstream channel UC. U.S. Pat. Nos. 5,012,469 and 5,390,181 describe different variations in the ratio and arrangement of mini-slots to payload slots in the upstream channel UC. The upstream spectrum 5-42 MHz of a sub-split HFC cable network is susceptible to noises and interference that can limit the amount of spectrum available for reliable transmissions. The noises are, most notably, "ingress noise" and "impulse noise." Ingress noise occurs because the coaxial cabling of the trunks 18 and drop lines 22, with imperfect shielding due to corroded connectors, cracked sheath, etc., function as antennas. Different radio transmissions are picked up by the shared medium, such as citizen band (CB) radio broadcasts at around 24 MHZ, short wave radio transmissions at various points in the 5-42 MHZ band, etc., and contribute to ingress noise. Impulse noise, on the other hand, results from noise spikes that occur from other phenomenon such as lightning strikes of the coaxial cabling. The coaxial cabling of the trunks 18 may also carry an electrical power signal for supplying power to the various devices (e.g., amplifiers 20) of the cable network. Power line arching through weak points of the cables and connectors also contribute to the impulse noise.
In order to reliably transmit control packets, such as reservation request packets, in mini-slots, a binary phase shift keying (BPSK) modulation technique or quaternary phase shift keying (QPSK) modulation technique is often used. On the other hand, to maximize the amount of data transmitted in payload packets, a high order quadrature amplitude modulation (QAM) technique such as 16-QAM, 64-QAM or even 256 QAM, with powerful forward error correction (FEC) is often used. However, spectral efficient modulation schemes, such as 16-QAM, 64-QAM and 256-QAM, require longer preambles for carrier recovery and burst synchronization and incur a much higher per burst overhead for mini-slots. That is, each SS 50 actually writes a frame into each mini-slot time period, including an inter-burst guard time period and a preamble, that precede the actual mini-slot control packet, such as is shown in FIG. 4. (FIG. 4 also shows the mini-slot packet structure as including an address or identifier, payload packet or communication type indicator, number of requested mini-slots field and CRC field.) The devices of the cable network 10 may use raised cosine filters. Such filters introduce a ringing into the channel. In addition, transmitters and receivers of the SSs 50 and head end 12 need a finite amount of time to turn on and off in order to read and write packets into specified slots. The purpose of the guard time period is to provide sufficient time for the ringing to dampen and to enable the transmitter or receiver circuitry of the SSs 50 and head end 12 to turn on or off. Following the guard time period is a "burst" or combination of a preamble and modulated data. The purpose of the preamble is to enable a receiver to fine tune to the carrier frequency of the carrier signal on which the data is modulated and to align in phase to the carrier signal, prior to sampling the carrier signal and demodulating data from the carrier signal. This synchronization and alignment operation is referred to as "burst sync." Longer preambles are required when spectral efficient, higher order QAM schemes are used to ensure very fine tuning thereby ensuring highly accurate sampling and demodulation. The impact of such effects on mini-slot efficiency are more pronounced as the order of the QAM increases, as depicted in FIG. 5. That is, a larger percentage of the time of the upstream channel UC is allocated to mini-slots as the order of the QAM increases.
To increase the utilization of the upstream channel UC, a technique of varying the time division pattern of the upstream channel UC into mini-slots and slots has also been proposed. This is illustrated in FIG. 6. At the top of FIG. 6, a fixed time division pattern of the upstream channel UC into slots and mini-slots is shown. The disadvantage of this technique is that much of the upstream channel UC capacity must be allocated to mini-slots to account for a typical worst case, or heavy load (numerous attempts to access mini-slots), scenario. In the alternative conventional technique, the ratio of mini-slots to slots can be dynamically varied by rearranging the pattern according to which the upstream channel is time divided into slots and mini-slots. This is depicted at the bottom of FIG. 6. For example, when the load is anticipated to be light (few attempts to access mini-slots), the ratio of mini-slots to slots is reduced. When the load is anticipated to be heavy, the ratio of mini-slots to slots is increased. However, this technique has the following disadvantages:
(1) It is complex to implement. PA0 (2) It is difficult and imprecise to predict the load based on past history, thereby risking a potential stability problem. PA0 (3) It imposes additional constraints on the mini-slot, such as requiring that slots lengths be equal to an integral multiple of mini-slot lengths, further reducing the utilization of the upstream channel UC for payload data.
U.S. Pat. No. 5,278,833 describes a wireless network including a base station and "communication units," such as cellular or cordless phones. This patent describes the circuitry and communication formats in detail. Therefore, only certain details of this wireless communication system are repeated herein. A frequency division multiplexing technique is used to form two channels, namely, an upstream channel having a first band, and a downstream channel, having a second, non-overlapping band. As above, the upstream channel is used for transmitting information from the communication units to the base station and the downstream channel is for communicating information from the base station to the communication units.
Like the cable network 10, a time division multiplexing technique is used to divide each of the upstream and downstream channels into time slots. Each of the time slots may be assigned by the base station for communication between a selected communication unit and the base station. Unlike the cable network 10, the upstream channel is divided only into uniform sized time slots. However, whenever a time slot of the upstream channel is not used for ordinary payload communication, it can be divided into two or more equally sized sub-slots for transmitting control information. A communication unit can communicate by transmitting a request packet in one of the sub-slots of a time slot not previously assigned for payload communication. The base station receives such request packets, determines how many time slots are necessary for the communication unit to communicate, and transmits a control packet in a time slot of the downstream channel indicating which slots are assigned to the communication unit. The communication unit then transmits its packets in its assigned time slot. No contention resolution protocol is specified for transmitting reservation requests. Nor does this patent explain how a communication unit determines that a time slot of the upstream channel is not assigned for payload communication. Finally, note that the upstream channel cannot carry both reservation request packets and payload packets simultaneously. The upstream channel capacity is therefore allocated to each of these kinds of packets thereby reducing the utilization of the upstream channel for carrying payload information.
U.S. Pat. No. 5,012,469 discloses a satellite communications network. The satellite communications network includes plural earth stations that communicate with a satellite station. The communication is bidirectional using a single contentious channel. The channel is time division multiplexed according to one of a number of different formats depending on the traffic load. According to one format, under certain circumstances, the channel is divided into "large slots" which include one payload time slot and a fixed number of mini-slots. Each mini-slot is uniquely assigned to the earth stations for writing reservation request packets (requesting reservation of payload time slots) for transmission to the satellite station. Under other circumstances, the channel is divided into payload time slots only, and the payload time slots are uniquely assigned to each earth station. As circumstances, such as the traffic load, change, the channel is formatted according to the appropriate one of the two formats. According to a second format, the channel is formatted in one of three different ways, including the two formats mentioned above and a third format in which the channel is divided into time slots which are accessed by the earth stations in a contentious fashion. Again, the channel is formatted according to one of the three different formats depending on the circumstances. In addition to the disadvantages mentioned above for the wireless and cable networks, the architecture suggested in this patent is highly complex.
It is an object of the present invention to overcome the disadvantages of the prior art.